<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Library Evolutionary Algorithms for Clustering (LEAC): include/ga_clustering_operator.hpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="leac_logo.png"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Library Evolutionary Algorithms for Clustering (LEAC)
   &#160;<span id="projectnumber">Version 1.0</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',false,false,'search.php','Search');
});
/* @license-end */</script>
<div id="main-nav"></div>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a>  </div>
  <div class="headertitle">
<div class="title">ga_clustering_operator.hpp File Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>genetic operators oriented to clustering  
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;climits&gt;</code><br />
<code>#include &lt;algorithm&gt;</code><br />
<code>#include &lt;cmath&gt;</code><br />
<code>#include &lt;iterator&gt;</code><br />
<code>#include &quot;<a class="el" href="common_8hpp_source.html">common.hpp</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="chromosome__cbga_8hpp_source.html">chromosome_cbga.hpp</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="chromosome__withrownull_8hpp_source.html">chromosome_withrownull.hpp</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="chromosome__feac_8hpp_source.html">chromosome_feac.hpp</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="chromosome__gga_8hpp_source.html">chromosome_gga.hpp</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="chromosome__variablelength_8hpp_source.html">chromosome_variablelength.hpp</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="linear__algebra__level1_8hpp_source.html">linear_algebra_level1.hpp</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="linear__algebra__level2_8hpp_source.html">linear_algebra_level2.hpp</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="bit__array_8hpp_source.html">bit_array.hpp</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="probability__selection_8hpp_source.html">probability_selection.hpp</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="vector__utils_8hpp_source.html">vector_utils.hpp</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="probability__distribution_8hpp_source.html">probability_distribution.hpp</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ga__selection_8hpp_source.html">ga_selection.hpp</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ga__integer__operator_8hpp_source.html">ga_integer_operator.hpp</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="partition__label_8hpp_source.html">partition_label.hpp</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ga__function__objective_8hpp_source.html">ga_function_objective.hpp</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="verbose__global_8hpp_source.html">verbose_global.hpp</a>&quot;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for ga_clustering_operator.hpp:</div>
<div class="dyncontent">
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="ga__clustering__operator_8hpp__incl.svg" width="100%" height="600"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
</div>
</div><div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="ga__clustering__operator_8hpp__dep__incl.svg" width="100%" height="451"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
</div>
</div>
<p><a href="ga__clustering__operator_8hpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespacegaclusteringop"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegaclusteringop.html">gaclusteringop</a></td></tr>
<tr class="memdesc:namespacegaclusteringop"><td class="mdescLeft">&#160;</td><td class="mdescRight">Genetic cluster-oriented operators. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a4c2ece0f1bd2488ca9dc8853a93fab35"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ga__clustering__operator_8hpp.html#a4c2ece0f1bd2488ca9dc8853a93fab35">GENETICOPCLUSTER_MAX_GLA</a>&#160;&#160;&#160;INT_MAX</td></tr>
<tr class="separator:a4c2ece0f1bd2488ca9dc8853a93fab35"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a182c10ea30b952abe8b98ae7e83f6938"><td class="memTemplParams" colspan="2">template&lt;typename T_FEATURE , typename T_REAL &gt; </td></tr>
<tr class="memitem:a182c10ea30b952abe8b98ae7e83f6938"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classgaencode_1_1_chrom_variable_length.html">gaencode::ChromVariableLength</a>&lt; T_FEATURE, T_REAL &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegaclusteringop.html#a182c10ea30b952abe8b98ae7e83f6938">gaclusteringop::newChromosome</a> (<a class="el" href="classmat_1_1_matrix_row.html">mat::MatrixRow</a>&lt; T_FEATURE &gt; &amp;aimatrixrowt_minMaxKSegments, T_REAL airt_fitnessInitial, T_REAL airt_objetiveInitial)</td></tr>
<tr class="memdesc:a182c10ea30b952abe8b98ae7e83f6938"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create new chromosome <a class="el" href="citelist.html#CITEREF_He:Tan:GAclusteringVarK:TGCA:2012">[18]</a>.  <a href="namespacegaclusteringop.html#a182c10ea30b952abe8b98ae7e83f6938">More...</a><br /></td></tr>
<tr class="separator:a182c10ea30b952abe8b98ae7e83f6938"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ecbd55894b1ddbc7bf49a22df7cde00"><td class="memTemplParams" colspan="2">template&lt;typename T_FEATURE , typename T_CLUSTERIDX , typename T_INSTANCE_FREQUENCY , typename T_INSTANCES_CLUSTER_K , typename T_FEATURE_SUM , typename T_REAL , typename INPUT_ITERATOR &gt; </td></tr>
<tr class="memitem:a3ecbd55894b1ddbc7bf49a22df7cde00"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegaclusteringop.html#a3ecbd55894b1ddbc7bf49a22df7cde00">gaclusteringop::merge</a> (<a class="el" href="classgaencode_1_1_chromosome_c_b_g_a.html">gaencode::ChromosomeCBGA</a>&lt; T_FEATURE, T_CLUSTERIDX, T_INSTANCE_FREQUENCY, T_INSTANCES_CLUSTER_K, T_FEATURE_SUM, T_REAL &gt; &amp;aiochromcbga_offspring, <a class="el" href="classgaencode_1_1_chromosome_c_b_g_a.html">gaencode::ChromosomeCBGA</a>&lt; T_FEATURE, T_CLUSTERIDX, T_INSTANCE_FREQUENCY, T_INSTANCES_CLUSTER_K, T_FEATURE_SUM, T_REAL &gt; &amp;aiochromcbga_part1, <a class="el" href="classgaencode_1_1_chromosome_c_b_g_a.html">gaencode::ChromosomeCBGA</a>&lt; T_FEATURE, T_CLUSTERIDX, T_INSTANCE_FREQUENCY, T_INSTANCES_CLUSTER_K, T_FEATURE_SUM, T_REAL &gt; &amp;aiochromcbga_part2, INPUT_ITERATOR aiiterator_instfirst, const INPUT_ITERATOR aiiterator_instlast, const <a class="el" href="structdist_1_1_dist.html">dist::Dist</a>&lt; T_REAL, T_FEATURE &gt; &amp;aifunc2p_dist)</td></tr>
<tr class="memdesc:a3ecbd55894b1ddbc7bf49a22df7cde00"><td class="mdescLeft">&#160;</td><td class="mdescRight">Merge two chomosomas.  <a href="namespacegaclusteringop.html#a3ecbd55894b1ddbc7bf49a22df7cde00">More...</a><br /></td></tr>
<tr class="separator:a3ecbd55894b1ddbc7bf49a22df7cde00"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a08e44d7c579743d81b7f23d0c09e4414"><td class="memTemplParams" colspan="2">template&lt;typename T_FEATURE , typename T_INSTANCE_FREQUENCY , typename T_INSTANCES_CLUSTER_K , typename T_FEATURE_SUM , typename T_CLUSTERIDX , typename T_REAL , typename INPUT_ITERATOR &gt; </td></tr>
<tr class="memitem:a08e44d7c579743d81b7f23d0c09e4414"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegaclusteringop.html#a08e44d7c579743d81b7f23d0c09e4414">gaclusteringop::crossPNNnew</a> (<a class="el" href="classgaencode_1_1_chromosome_c_b_g_a.html">gaencode::ChromosomeCBGA</a>&lt; T_FEATURE, T_CLUSTERIDX, T_INSTANCE_FREQUENCY, T_INSTANCES_CLUSTER_K, T_FEATURE_SUM, T_REAL &gt; &amp;aochromcbga_new, <a class="el" href="classgaencode_1_1_chromosome_c_b_g_a.html">gaencode::ChromosomeCBGA</a>&lt; T_FEATURE, T_CLUSTERIDX, T_INSTANCE_FREQUENCY, T_INSTANCES_CLUSTER_K, T_FEATURE_SUM, T_REAL &gt; &amp;aichromcbga_old1, <a class="el" href="classgaencode_1_1_chromosome_c_b_g_a.html">gaencode::ChromosomeCBGA</a>&lt; T_FEATURE, T_CLUSTERIDX, T_INSTANCE_FREQUENCY, T_INSTANCES_CLUSTER_K, T_FEATURE_SUM, T_REAL &gt; &amp;aichromcbga_old2, INPUT_ITERATOR aiiterator_instfirst, const INPUT_ITERATOR aiiterator_instlast, const T_CLUSTERIDX aicidx_numclusterKToReduce, const <a class="el" href="structdist_1_1_dist.html">dist::Dist</a>&lt; T_REAL, T_FEATURE &gt; &amp;aifunc2p_dist)</td></tr>
<tr class="separator:a08e44d7c579743d81b7f23d0c09e4414"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a50fa9f176df103b249d767838b5a044c"><td class="memTemplParams" colspan="2">template&lt;typename T_GENE , typename T_METRIC &gt; </td></tr>
<tr class="memitem:a50fa9f176df103b249d767838b5a044c"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegaclusteringop.html#a50fa9f176df103b249d767838b5a044c">gaclusteringop::onePointCrossover</a> (<a class="el" href="classgaencode_1_1_chromosome_matrix_with_row_null.html">gaencode::ChromosomeMatrixWithRowNull</a>&lt; T_GENE, T_METRIC &gt; &amp;aiochrommwrn_child1, <a class="el" href="classgaencode_1_1_chromosome_matrix_with_row_null.html">gaencode::ChromosomeMatrixWithRowNull</a>&lt; T_GENE, T_METRIC &gt; &amp;aiochrommwrn_child2)</td></tr>
<tr class="separator:a50fa9f176df103b249d767838b5a044c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc19797156931b073030d9a58175d0c9"><td class="memTemplParams" colspan="2">template&lt;typename T_CLUSTERIDX , typename T_METRIC &gt; </td></tr>
<tr class="memitem:abc19797156931b073030d9a58175d0c9"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classgaencode_1_1_chromosome_g_g_a.html">gaencode::ChromosomeGGA</a>&lt; T_CLUSTERIDX, T_METRIC &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegaclusteringop.html#abc19797156931b073030d9a58175d0c9">gaclusteringop::mergeCrossover</a> (<a class="el" href="classgaencode_1_1_chromosome_g_g_a.html">gaencode::ChromosomeGGA</a>&lt; T_CLUSTERIDX, T_METRIC &gt; &amp;aichrom_parent1, <a class="el" href="classgaencode_1_1_chromosome_g_g_a.html">gaencode::ChromosomeGGA</a>&lt; T_CLUSTERIDX, T_METRIC &gt; &amp;aichrom_parent2)</td></tr>
<tr class="memdesc:abc19797156931b073030d9a58175d0c9"><td class="mdescLeft">&#160;</td><td class="mdescRight">mergeCrossover <a class="el" href="citelist.html#CITEREF_Agustin:etal:GAclusteringVarK:GGA:2012">[1]</a>  <a href="namespacegaclusteringop.html#abc19797156931b073030d9a58175d0c9">More...</a><br /></td></tr>
<tr class="separator:abc19797156931b073030d9a58175d0c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5c9d8a0cc06ff5663e3fb5c186e852cd"><td class="memTemplParams" colspan="2">template&lt;typename T_CLUSTERIDX , typename T_REAL , typename T_FEATURE , typename T_INSTANCES_CLUSTER_K , typename T_FEATURE_SUM , typename INPUT_ITERATOR &gt; </td></tr>
<tr class="memitem:a5c9d8a0cc06ff5663e3fb5c186e852cd"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegaclusteringop.html#a5c9d8a0cc06ff5663e3fb5c186e852cd">gaclusteringop::crossoverCGA</a> (<a class="el" href="classgaencode_1_1_chrom_fixed_length.html">gaencode::ChromFixedLength</a>&lt; T_CLUSTERIDX, T_REAL &gt; &amp;aochrom_childC, <a class="el" href="classgaencode_1_1_chrom_fixed_length.html">gaencode::ChromFixedLength</a>&lt; T_CLUSTERIDX, T_REAL &gt; &amp;aichrom_parentA, <a class="el" href="classgaencode_1_1_chrom_fixed_length.html">gaencode::ChromFixedLength</a>&lt; T_CLUSTERIDX, T_REAL &gt; &amp;aichrom_parentB, <a class="el" href="classmat_1_1_matrix_row.html">mat::MatrixRow</a>&lt; T_FEATURE &gt; &amp;aomatrixrowt_centroids, <a class="el" href="classmat_1_1_matrix_row.html">mat::MatrixRow</a>&lt; T_FEATURE_SUM &gt; &amp;aomatrixrowt_sumInstCluster, std::vector&lt; T_INSTANCES_CLUSTER_K &gt; &amp;aovectort_numInstClusterK, INPUT_ITERATOR aiiterator_instfirst, const INPUT_ITERATOR aiiterator_instlast, const <a class="el" href="structdist_1_1_dist.html">dist::Dist</a>&lt; T_REAL, T_FEATURE &gt; &amp;aifunc2p_dist)</td></tr>
<tr class="separator:a5c9d8a0cc06ff5663e3fb5c186e852cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a935f199f5ca932fbaa301198fcc563f9"><td class="memTemplParams" colspan="2">template&lt;typename T_CLUSTERIDX , typename T_REAL &gt; </td></tr>
<tr class="memitem:a935f199f5ca932fbaa301198fcc563f9"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegaclusteringop.html#a935f199f5ca932fbaa301198fcc563f9">gaclusteringop::splittingMutation</a> (<a class="el" href="classgaencode_1_1_chromosome_g_g_a.html">gaencode::ChromosomeGGA</a>&lt; T_CLUSTERIDX, T_REAL &gt; &amp;aiochromab_toMutate)</td></tr>
<tr class="memdesc:a935f199f5ca932fbaa301198fcc563f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Mutation by cluster splitting <a class="el" href="citelist.html#CITEREF_Agustin:etal:GAclusteringVarK:GGA:2012">[1]</a>.  <a href="namespacegaclusteringop.html#a935f199f5ca932fbaa301198fcc563f9">More...</a><br /></td></tr>
<tr class="separator:a935f199f5ca932fbaa301198fcc563f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a53fa1eea7173c38da2ce171f83b0d464"><td class="memTemplParams" colspan="2">template&lt;typename T_CLUSTERIDX , typename T_REAL &gt; </td></tr>
<tr class="memitem:a53fa1eea7173c38da2ce171f83b0d464"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegaclusteringop.html#a53fa1eea7173c38da2ce171f83b0d464">gaclusteringop::mergeMutation</a> (<a class="el" href="classgaencode_1_1_chromosome_g_g_a.html">gaencode::ChromosomeGGA</a>&lt; T_CLUSTERIDX, T_REAL &gt; &amp;aiochromab_toMutate)</td></tr>
<tr class="separator:a53fa1eea7173c38da2ce171f83b0d464"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa952213684dbb755ec6d44b3c783f60"><td class="memTemplParams" colspan="2">template&lt;typename T_FEATURE , typename T_REAL &gt; </td></tr>
<tr class="memitem:aaa952213684dbb755ec6d44b3c783f60"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegaclusteringop.html#aaa952213684dbb755ec6d44b3c783f60">gaclusteringop::randomMutation</a> (<a class="el" href="classgaencode_1_1_chromosome_matrix_with_row_null.html">gaencode::ChromosomeMatrixWithRowNull</a>&lt; T_FEATURE, T_REAL &gt; &amp;aiochromatrixwrn_toMutate)</td></tr>
<tr class="memdesc:aaa952213684dbb755ec6d44b3c783f60"><td class="mdescLeft">&#160;</td><td class="mdescRight">Random mutation <a class="el" href="citelist.html#CITEREF_Bandyopadhyay:Maulik:GACVarK:GCUK:2002">[5]</a>.  <a href="namespacegaclusteringop.html#aaa952213684dbb755ec6d44b3c783f60">More...</a><br /></td></tr>
<tr class="separator:aaa952213684dbb755ec6d44b3c783f60"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abf115dc68f58f8d8fdb72e7c679766c3"><td class="memTemplParams" colspan="2">template&lt;typename T_GENE , typename T_METRIC &gt; </td></tr>
<tr class="memitem:abf115dc68f58f8d8fdb72e7c679766c3"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegaclusteringop.html#abf115dc68f58f8d8fdb72e7c679766c3">gaclusteringop::biDirectionHMutation</a> (<a class="el" href="classgaencode_1_1_chromosome_string.html">gaencode::ChromosomeString</a>&lt; T_GENE, T_METRIC &gt; &amp;aiochromstr_toMutate, const T_METRIC airt_minObjetiveFunc, const T_METRIC airt_maxObjetiveFunc, const T_GENE *aiarrayt_minFeatures, const T_GENE *aiarrayt_maxFeatures)</td></tr>
<tr class="memdesc:abf115dc68f58f8d8fdb72e7c679766c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">biDirectionHMutation <a class="el" href="citelist.html#CITEREF_Bandyopadhyay:Maulik:GAclustering:KGA:2002">[4]</a>  <a href="namespacegaclusteringop.html#abf115dc68f58f8d8fdb72e7c679766c3">More...</a><br /></td></tr>
<tr class="separator:abf115dc68f58f8d8fdb72e7c679766c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aefe966c20e6bd3d44f0621349782cb91"><td class="memTemplParams" colspan="2">template&lt;typename T_FEATURE , typename T_REAL &gt; </td></tr>
<tr class="memitem:aefe966c20e6bd3d44f0621349782cb91"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegaclusteringop.html#aefe966c20e6bd3d44f0621349782cb91">gaclusteringop::biDirectionMutation</a> (<a class="el" href="classgaencode_1_1_chromosome_string.html">gaencode::ChromosomeString</a>&lt; T_FEATURE, T_REAL &gt; &amp;aiochromstr_toMutate, const T_FEATURE *aiarrayt_minFeatures, const T_FEATURE *aiarrayt_maxFeatures)</td></tr>
<tr class="separator:aefe966c20e6bd3d44f0621349782cb91"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a68b1581a21d20dc38bb0896acaf380f1"><td class="memTemplParams" colspan="2">template&lt;typename T_CENTROIDS , typename T_REAL &gt; </td></tr>
<tr class="memitem:a68b1581a21d20dc38bb0896acaf380f1"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegaclusteringop.html#a68b1581a21d20dc38bb0896acaf380f1">gaclusteringop::rearrangedCluster</a> (<a class="el" href="classgaencode_1_1_chromosome_string.html">gaencode::ChromosomeString</a>&lt; T_CENTROIDS, T_REAL &gt; &amp;aochrom_YRearranged, const <a class="el" href="classmat_1_1_matrix_row.html">mat::MatrixRow</a>&lt; T_CENTROIDS &gt; &amp;aimatrixrowt_XReferenced, const <a class="el" href="structdist_1_1_dist.html">dist::Dist</a>&lt; T_REAL, T_CENTROIDS &gt; &amp;aifunc2p_dist)</td></tr>
<tr class="memdesc:a68b1581a21d20dc38bb0896acaf380f1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Rearranged cluster <a class="el" href="citelist.html#CITEREF_Chang:etal:GAclustering:GAGR:2009">[11]</a>.  <a href="namespacegaclusteringop.html#a68b1581a21d20dc38bb0896acaf380f1">More...</a><br /></td></tr>
<tr class="separator:a68b1581a21d20dc38bb0896acaf380f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a394e5de28006937d308d2659683c2cc6"><td class="memTemplParams" colspan="2">template&lt;typename T_CLUSTERIDX , typename T_REAL , typename T_FEATURE , typename T_INSTANCES_CLUSTER_K , typename T_FEATURE_SUM , typename T_COMMON_IDOMAIN , typename INPUT_ITERATOR &gt; </td></tr>
<tr class="memitem:a394e5de28006937d308d2659683c2cc6"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegaclusteringop.html#a394e5de28006937d308d2659683c2cc6">gaclusteringop::kmeansfeac</a> (<a class="el" href="classgaencode_1_1_chromosome_f_e_a_c.html">gaencode::ChromosomeFEAC</a>&lt; T_CLUSTERIDX, T_REAL, T_FEATURE, T_FEATURE_SUM, T_INSTANCES_CLUSTER_K &gt; &amp;aochrom_feac, INPUT_ITERATOR aiiterator_instfirst, const INPUT_ITERATOR aiiterator_instlast, T_COMMON_IDOMAIN aiit_kmeansNumMaxIter, T_FEATURE airt_kmeansMaxDiffCent, <a class="el" href="structdist_1_1_dist.html">dist::Dist</a>&lt; T_REAL, T_FEATURE &gt; &amp;aifunc2p_dist)</td></tr>
<tr class="separator:a394e5de28006937d308d2659683c2cc6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a76027f1493ad07ff92bdee8e07d05b15"><td class="memTemplParams" colspan="2">template&lt;typename T_CLUSTERIDX , typename T_REAL , typename T_FEATURE , typename T_INSTANCES_CLUSTER_K , typename T_FEATURE_SUM , typename INPUT_ITERATOR &gt; </td></tr>
<tr class="memitem:a76027f1493ad07ff92bdee8e07d05b15"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegaclusteringop.html#a76027f1493ad07ff92bdee8e07d05b15">gaclusteringop::MO1</a> (<a class="el" href="classgaencode_1_1_chrom_fixed_length.html">gaencode::ChromFixedLength</a>&lt; T_CLUSTERIDX, T_REAL &gt; &amp;aiochromfixlen_toMutate, <a class="el" href="classmat_1_1_matrix_row.html">mat::MatrixRow</a>&lt; T_FEATURE &gt; &amp;aomatrixrowt_centroids, <a class="el" href="classmat_1_1_matrix_row.html">mat::MatrixRow</a>&lt; T_FEATURE_SUM &gt; &amp;aomatrixrowt_sumInstCluster, std::vector&lt; T_INSTANCES_CLUSTER_K &gt; &amp;aovectort_numInstClusterK, INPUT_ITERATOR aiiterator_instfirst, const INPUT_ITERATOR aiiterator_instlast, const <a class="el" href="structdist_1_1_dist.html">dist::Dist</a>&lt; T_REAL, T_FEATURE &gt; &amp;aifunc2p_dist)</td></tr>
<tr class="memdesc:a76027f1493ad07ff92bdee8e07d05b15"><td class="mdescLeft">&#160;</td><td class="mdescRight">MO1 mutation operator <a class="el" href="citelist.html#CITEREF_Hruschka:Ebecken:GAClusteringLabelKVar:CGA:2003">[19]</a>.  <a href="namespacegaclusteringop.html#a76027f1493ad07ff92bdee8e07d05b15">More...</a><br /></td></tr>
<tr class="separator:a76027f1493ad07ff92bdee8e07d05b15"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3c99bd6485c6e3a0daf93aa53a97edb9"><td class="memTemplParams" colspan="2">template&lt;typename T_CLUSTERIDX , typename T_REAL , typename T_FEATURE , typename INPUT_ITERATOR &gt; </td></tr>
<tr class="memitem:a3c99bd6485c6e3a0daf93aa53a97edb9"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegaclusteringop.html#a3c99bd6485c6e3a0daf93aa53a97edb9">gaclusteringop::MO2</a> (<a class="el" href="classgaencode_1_1_chrom_fixed_length.html">gaencode::ChromFixedLength</a>&lt; T_CLUSTERIDX, T_REAL &gt; &amp;aiochromfixlen_toMutate, const INPUT_ITERATOR aiiterator_instfirst, const <a class="el" href="structdist_1_1_dist.html">dist::Dist</a>&lt; T_REAL, T_FEATURE &gt; &amp;aifunc2p_dist)</td></tr>
<tr class="separator:a3c99bd6485c6e3a0daf93aa53a97edb9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a25119300c021923151df355bba35df29"><td class="memTemplParams" colspan="2">template&lt;typename T_CLUSTERIDX , typename T_REAL , typename T_FEATURE , typename T_FEATURE_SUM , typename T_INSTANCES_CLUSTER_K , typename INPUT_ITERATOR &gt; </td></tr>
<tr class="memitem:a25119300c021923151df355bba35df29"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegaclusteringop.html#a25119300c021923151df355bba35df29">gaclusteringop::MO1</a> (<a class="el" href="classgaencode_1_1_chromosome_f_e_a_c.html">gaencode::ChromosomeFEAC</a>&lt; T_CLUSTERIDX, T_REAL, T_FEATURE, T_FEATURE_SUM, T_INSTANCES_CLUSTER_K &gt; &amp;aochromfeac_toMutate, INPUT_ITERATOR aiiterator_instfirst, const INPUT_ITERATOR aiiterator_instlast, <a class="el" href="structdist_1_1_dist.html">dist::Dist</a>&lt; T_REAL, T_FEATURE &gt; &amp;aifunc2p_dist)</td></tr>
<tr class="separator:a25119300c021923151df355bba35df29"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a90288f6cdf4cbf406d1d5a71080adff1"><td class="memTemplParams" colspan="2">template&lt;typename T_CLUSTERIDX , typename T_REAL , typename T_FEATURE , typename T_FEATURE_SUM , typename T_INSTANCES_CLUSTER_K , typename INPUT_ITERATOR &gt; </td></tr>
<tr class="memitem:a90288f6cdf4cbf406d1d5a71080adff1"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegaclusteringop.html#a90288f6cdf4cbf406d1d5a71080adff1">gaclusteringop::MO2</a> (<a class="el" href="classgaencode_1_1_chromosome_f_e_a_c.html">gaencode::ChromosomeFEAC</a>&lt; T_CLUSTERIDX, T_REAL, T_FEATURE, T_FEATURE_SUM, T_INSTANCES_CLUSTER_K &gt; &amp;aochromfeac_toMutate, INPUT_ITERATOR aiiterator_instfirst, const INPUT_ITERATOR aiiterator_instlast, <a class="el" href="structdist_1_1_dist.html">dist::Dist</a>&lt; T_REAL, T_FEATURE &gt; &amp;aifunc2p_dist)</td></tr>
<tr class="separator:a90288f6cdf4cbf406d1d5a71080adff1"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:acee5944d570f2fb7efdf1d4c801b30fb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="random__ext_8hpp.html#a096d42d6e488c0b0de08cd7c24ec0099">StdMT19937</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ga__clustering__operator_8hpp.html#acee5944d570f2fb7efdf1d4c801b30fb">gmt19937_eng</a></td></tr>
<tr class="separator:acee5944d570f2fb7efdf1d4c801b30fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>genetic operators oriented to clustering </p>
<p>This file is part of the LEAC.<br />
<br />
</p><dl class="section version"><dt>Version</dt><dd>1.0 </dd></dl>
<dl class="section date"><dt>Date</dt><dd>2015-2017 </dd></dl>
<dl class="section author"><dt>Authors</dt><dd>Hermes Robles-Berumen <a href="#" onclick="location.href='mai'+'lto:'+'her'+'me'+'s@u'+'az'+'.ed'+'u.'+'mx'; return false;">herme<span style="display: none;">.nosp@m.</span>s@ua<span style="display: none;">.nosp@m.</span>z.edu<span style="display: none;">.nosp@m.</span>.mx</a><br />
 Sebastian Ventura <a href="#" onclick="location.href='mai'+'lto:'+'sve'+'nt'+'ura'+'@u'+'co.'+'es'; return false;">svent<span style="display: none;">.nosp@m.</span>ura@<span style="display: none;">.nosp@m.</span>uco.e<span style="display: none;">.nosp@m.</span>s</a><br />
 Amelia Zafra <a href="#" onclick="location.href='mai'+'lto:'+'aza'+'fr'+'a@u'+'co'+'.es'; return false;">azafr<span style="display: none;">.nosp@m.</span>a@uc<span style="display: none;">.nosp@m.</span>o.es</a><br />
 <a href="http://www.uco.es/kdis/">KDIS</a> </dd></dl>
<dl class="section copyright"><dt>Copyright</dt><dd><a href="https://www.gnu.org/licenses/gpl-3.0.en.html">GPLv3</a> license </dd></dl>

<p class="definition">Definition in file <a class="el" href="ga__clustering__operator_8hpp_source.html">ga_clustering_operator.hpp</a>.</p>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a id="a4c2ece0f1bd2488ca9dc8853a93fab35"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4c2ece0f1bd2488ca9dc8853a93fab35">&#9670;&nbsp;</a></span>GENETICOPCLUSTER_MAX_GLA</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GENETICOPCLUSTER_MAX_GLA&#160;&#160;&#160;INT_MAX</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="ga__clustering__operator_8hpp_source.html#l00039">39</a> of file <a class="el" href="ga__clustering__operator_8hpp_source.html">ga_clustering_operator.hpp</a>.</p>

</div>
</div>
<h2 class="groupheader">Variable Documentation</h2>
<a id="acee5944d570f2fb7efdf1d4c801b30fb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acee5944d570f2fb7efdf1d4c801b30fb">&#9670;&nbsp;</a></span>gmt19937_eng</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="random__ext_8hpp.html#a096d42d6e488c0b0de08cd7c24ec0099">StdMT19937</a> gmt19937_eng</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="random__ext_8hpp_source.html#l00063">63</a> of file <a class="el" href="random__ext_8hpp_source.html">random_ext.hpp</a>.</p>

<p class="reference">Referenced by <a class="el" href="ga__clustering__operator_8hpp_source.html#l01209">gaclusteringop::biDirectionHMutation()</a>, <a class="el" href="ga__clustering__operator_8hpp_source.html#l01359">gaclusteringop::biDirectionMutation()</a>, <a class="el" href="ga__clustering__operator_8hpp_source.html#l00690">gaclusteringop::crossoverCGA()</a>, <a class="el" href="ga__clustering__operator_8hpp_source.html#l00518">gaclusteringop::mergeCrossover()</a>, <a class="el" href="ga__clustering__operator_8hpp_source.html#l01898">gaclusteringop::MO1()</a>, <a class="el" href="ga__clustering__operator_8hpp_source.html#l02046">gaclusteringop::MO2()</a>, <a class="el" href="ga__clustering__operator_8hpp_source.html#l00069">gaclusteringop::newChromosome()</a>, <a class="el" href="ga__clustering__operator_8hpp_source.html#l00454">gaclusteringop::onePointCrossover()</a>, and <a class="el" href="ga__clustering__operator_8hpp_source.html#l01120">gaclusteringop::randomMutation()</a>.</p>

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Fri Apr 19 2019 08:58:33 for Library Evolutionary Algorithms for Clustering (LEAC) by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.15
</small></address>
</body>
</html>
